#!/usr/bin/python
# -*- coding: utf8 -*-
#Programa: segonantsig.py
#Data: 26/09/2010
#Autor: Iván Viguera
#Descripció:
#Demana a l'usuari una hora, un minut i un segon i mostri el segon anterior
#i el segon següent.
#En cas que rebi un valor erroni, ho avisarà i tornarà a demanar-lo.
#En cas que rebi una 'x' per a alguna de les peticions, finalitzarà l'execució.

#----Funciones----

#Decrementa un segundo a la hora facilitada.
#Muestra la hora final por pantalla
def decrementarSeg(h,m,s) :
	if s > 0 :
		s = s - 1
	else :
		s = 59
		if m > 0 :
			m = m -1
		else :
			m = 59
		if h > 0 :
			h = h - 1
		else :
			h = 23
	mostrarHora(h,m,s)

#Incrementa un segundo a la hora facilitada.
#Muestra la hora final por pantalla
def incrementarSeg(h,m,s) :
	if s < 59 :
		s = s + 1
	else :
		s = 0
		if m < 59 :
			m = m + 1
		else :
			m = 0
		if h < 23 :
			h = h + 1
		else :
			h = 0
	mostrarHora(h,m,s)

#Muestra la hora introducida formateada.
def mostrarHora(h,m,s) :
	if m<10:
		m = "0%s" % (m)
	if s<10:
		s = "0%s" % (s)
	print h,':',m,':',s
#---Clases---

#----Main----
resp = 'n'
while resp <> 'x' : #HORAS
	resp = raw_input("hora? ")
	if resp != "x" : #no desea salir
		hora = int(resp)
		if hora >= 0 and hora<24 :
			while resp <> "x" : #MINUTOS
				resp = raw_input("minuto? ")
				if resp <> "x" : #no desea salir
					minuto = int (resp)
					if minuto >= 0 and minuto < 60 :
						while resp<> "x" : #SEGUNDOS
							resp = raw_input("segundo? ")
							if resp <> "x" : #no desea salir
								segundo = int(resp)
								if segundo >= 0 and segundo < 60 :
									decrementarSeg(hora,minuto,segundo)
									incrementarSeg(hora,minuto,segundo)
									#Fuerza a salir de la aplicación
									resp = 'x'
								else : #error
									print "error: minuto de 0 a 59"	
					else : #error
						print "error: minuto de 0 a 59"		
		else : #error
			print "error: hora de 0 a 23"
	
